{{#if isAuthorized }}
  {{#if create}}
    {{title 'New Token'}}
  {{else}}
    {{title 'Edit Token'}}
  {{/if}}
{{else}}
  {{title 'Access Controls'}}
{{/if}}
<AppView
  @class={{concat "token " (if isAuthorized "edit" "list")}}
  @loading={{isLoading}}
  @authorized={{isAuthorized}}
  @enabled={{isEnabled}}
  >
    <BlockSlot @name="notification" as |status type item error|>
      {{partial 'dc/acls/tokens/notifications'}}
    </BlockSlot>
    <BlockSlot @name="disabled">
      {{partial 'dc/acls/disabled'}}
    </BlockSlot>
    <BlockSlot @name="authorization">
      {{partial 'dc/acls/authorization'}}
    </BlockSlot>
    <BlockSlot @name="breadcrumbs">
        <ol>
            <li><a data-test-back href={{href-to 'dc.acls.tokens'}}>All Tokens</a></li>
        </ol>
    </BlockSlot>
    <BlockSlot @name="header">
        <h1>
{{#if isAuthorized }}
  {{#if create }}
            New Token
  {{else}}
            Edit Token
  {{/if}}
{{else}}
            Access Controls
{{/if}}
        </h1>
    </BlockSlot>
    <BlockSlot @name="actions">
{{#if (not create)}}
  {{#if (not-eq item.AccessorID token.AccessorID)}}
      <ConfirmationDialog @message="Are you sure you want to use this ACL token?">
        <BlockSlot @name="action" as |confirm|>
            <button data-test-use type="button" {{ action confirm 'use' item }}>Use</button>
        </BlockSlot>
        <BlockSlot @name="dialog" as |execute cancel message|>
          <p>
              {{message}}
          </p>
          <button type="button" class="type-delete" {{action execute}}>Confirm Use</button>
          <button type="button" class="type-cancel" {{action cancel}}>Cancel</button>
        </BlockSlot>
      </ConfirmationDialog>
  {{/if}}
  {{#if (not (token/is-legacy item))}}
      <button data-test-clone type="button" {{ action "clone" item }}>Duplicate</button>
  {{/if}}
{{/if}}
    </BlockSlot>
    <BlockSlot @name="content">
        {{#if (token/is-legacy item)}}
            <p class="notice info"><strong>Update.</strong> We have upgraded our ACL system by allowing you to create reusable policies which you can then apply to tokens. Don't worry, even though this token was written in the old style, it is still valid. However, we do recommend upgrading your old tokens to the new style. Learn how in our <a href="{{env 'CONSUL_DOCS_URL'}}/guides/acl-migrate-tokens.html" target="_blank" rel="noopener noreferrer">documentation</a>.</p>
        {{/if}}
{{#if (not create) }}
      <div class="definition-table">
          <dl>
            <dt>AccessorID</dt>
            <dd>
              <CopyButton @value={{item.AccessorID}} @name="AccessorID" @position="top-start" /> {{item.AccessorID}}
            </dd>
            <dt>Token</dt>
            <dd>
              <CopyButton @value={{item.SecretID}} @name="Token" @position="top-start" /> <SecretButton>{{item.SecretID}}</SecretButton>
            </dd>
{{#if (and (not (token/is-legacy item)) (not create))}}
            <dt>Scope</dt>
            <dd>
              {{if item.Local 'local' 'global' }}
            </dd>
{{/if}}
          </dl>
      </div>
{{/if}}
        {{ partial 'dc/acls/tokens/form'}}
    </BlockSlot>
</AppView>